Dual opaque and hierarchical URIs

I noticed something very unusual about the proposed feed URI scheme 
for RSS. This is separate from previous concerns that have been 
raised about the feed URI being a synonym for http.  There may be a 
deeper architectural principle at stake here too, which is not 
currently addressed in the URI specs. Is it permissible for one 
scheme to have both opaque and hierarchical forms?

The draft spec 
<http://www.25hoursaday.com/draft-obasanjo-feed-URI-scheme-02.html> 
states :

The following are examples of the "feed" URI scheme

feed:http://example.com/rss.xml  	- Identifies the RSS feed at 
'http://example.com/rss.xml' 
feed:https://example.com/rss.xml   - Identifies the RSS feed at 
'https://example.com/rss.xml' 
feed://example.com/rss.xml  	- Identifies the RSS feed at 
'http://example.com/rss.xml'

The first two examples are opaque URIs in an RFC 2396 sense. The 
third is a hierarchical URI. This would certainly cause problems for 
some generic URI processing code I have recently written in XOM which 
I now realize has an implicit assumption that each scheme is either 
opaque or heirarchical but not both. I'm not sure this is wrong 
according to RFC 2396. That spec contains no  clear language which 
would rule this out, and at least one sentence implies that this is 
POK ("It is not necessary for all URI within a given scheme to be 
restricted to the <hier_part> syntax, since the hierarchical 
properties of that syntax are only necessary when relative URI are 
used within a particular document.") This sentence has been deleted 
from the draft replacement for RFC 2396.

Regardless, this seems quite confusing and potentially problem 
causing for existing software. Is it really necessary or advisable to 
define a URI scheme that can be both opaque and hierarchical? 
Continuing with this line of thought, the primary purpose of 
hierarchical URIs is to allow relative references, but does this 
really apply here? Could there be a relative reference to 
feed://example.com/rss.xml ? Would this have the expected resolution? 
Probably. But I expect it would be confusing to users that they could 
use relative references for feed://example.com/rss.xml but not for 
the opaque form feed:http://example.com/rss.xml



-- 

   Elliotte Rusty Harold
   elharo@metalab.unc.edu
   Effective XML (Addison-Wesley, 2003)
   http://www.cafeconleche.org/books/effectivexml            
   http://www.amazon.com/exec/obidos/ISBN%3D0321150406/ref%3Dnosim/cafeaulaitA 

Received on Thursday, 29 January 2004 09:56:50 UTC